# Node Exporter环境变量配置文件
# 此文件定义Node Exporter服务的环境变量
# 由systemd服务文件引用：EnvironmentFile=-/etc/default/node_exporter

# === 基本配置选项 ===
# 额外的命令行参数（会追加到systemd服务文件中的ExecStart命令）
NODE_EXPORTER_OPTS="{% for arg in node_exporter_extra_args %}{{ arg }} {% endfor %}"

# === 环境变量 ===
{% for key, value in node_exporter_env_vars.items() %}
{{ key }}="{{ value }}"
{% endfor %}

# === 性能调优 ===
{% if node_exporter_env_vars.GOMAXPROCS is not defined %}
# Go运行时最大处理器数（默认使用系统CPU核心数）
GOMAXPROCS={{ ansible_processor_vcpus | default(2) }}
{% endif %}

# === 调试选项 ===
{% if node_exporter_env_vars.NODE_EXPORTER_DEBUG is not defined %}
# 是否启用调试模式
NODE_EXPORTER_DEBUG="false"
{% endif %}

# === 日志配置 ===
{% if node_exporter_log_to_file %}
# 日志文件路径（如果启用文件日志）
LOG_FILE="{{ node_exporter_log_file }}"
{% endif %}

# === 安全配置 ===
{% if node_exporter_tls_enabled %}
# TLS配置文件路径
WEB_CONFIG_FILE="{{ node_exporter_config_dir }}/web_config.yml"
{% endif %}

# === 收集器特定配置 ===
# 文本文件收集器目录
{% if node_exporter_textfile_dir is defined %}
TEXTFILE_DIRECTORY="{{ node_exporter_textfile_dir }}"
{% endif %}

# === 网络配置 ===
# 监听地址
WEB_LISTEN_ADDRESS="{{ node_exporter_web_listen_address }}"

# 遥测路径
WEB_TELEMETRY_PATH="{{ node_exporter_web_telemetry_path }}"

# === 超时配置 ===
# 请求超时偏移量
{% if node_exporter_timeout_offset is defined %}
WEB_TIMEOUT_OFFSET="{{ node_exporter_timeout_offset }}"
{% endif %}

# 最大并发请求数
{% if node_exporter_max_requests is defined %}
WEB_MAX_REQUESTS="{{ node_exporter_max_requests }}"
{% endif %}